When streaming media content from an Internet download server, a viewer may want to fast-forward or rewind video content. Solutions for fast-forwarding include downloading video content at a faster rate than playback speed; however, this solution involves increasing network bandwidth if the viewer wants to see all the frames in a media stream at the fast-forward rate. For example, when fast-forwarding at 8 times playback speed, a client device would use 8 times the bandwidth compared with normal playback in order to include all the frames in the media stream. Another solution involves downloading the full content of a media stream before fast-forwarding; consuming more memory in a playback device to hold the content while also increasing the start-up delay for the content to be downloaded before fast-forwarding can begin.
Additionally, solutions for fast rewinding include sending byte-range seeks to decoding boundaries and then downloading a portion of content from a previous decoding boundary, since decoders currently do not decode video content in a reverse order. Unfortunately, this solution is server dependent and not all Internet download servers and proxy server support such byte-range seek requests for the http protocol. Additionally, solutions may involve downloading the full content of a media stream before fast rewinding and consequently consuming more memory to hold the content as well as increasing the start-up delay for the content to download before fast rewinding.